// Copyright 2021-2025 Buf Technologies, Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//      http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

// @generated by protoc-gen-es v2.10.1 with parameter "target=js+dts,import_extension=js"
// @generated from file google/protobuf/unittest_proto3_optional.proto (package proto2_unittest, syntax proto3)
/* eslint-disable */

import { enumDesc, extDesc, fileDesc, messageDesc, tsEnum } from "@bufbuild/protobuf/codegenv2";
import { file_google_protobuf_descriptor } from "@bufbuild/protobuf/wkt";

/**
 * Describes the file google/protobuf/unittest_proto3_optional.proto.
 */
export const file_google_protobuf_unittest_proto3_optional = /*@__PURE__*/
  fileDesc("Ci5nb29nbGUvcHJvdG9idWYvdW5pdHRlc3RfcHJvdG8zX29wdGlvbmFsLnByb3RvEg9wcm90bzJfdW5pdHRlc3QiqwoKElRlc3RQcm90bzNPcHRpb25hbBIbCg5vcHRpb25hbF9pbnQzMhgBIAEoBUgAiAEBEhsKDm9wdGlvbmFsX2ludDY0GAIgASgDSAGIAQESHAoPb3B0aW9uYWxfdWludDMyGAMgASgNSAKIAQESHAoPb3B0aW9uYWxfdWludDY0GAQgASgESAOIAQESHAoPb3B0aW9uYWxfc2ludDMyGAUgASgRSASIAQESHAoPb3B0aW9uYWxfc2ludDY0GAYgASgSSAWIAQESHQoQb3B0aW9uYWxfZml4ZWQzMhgHIAEoB0gGiAEBEh0KEG9wdGlvbmFsX2ZpeGVkNjQYCCABKAZIB4gBARIeChFvcHRpb25hbF9zZml4ZWQzMhgJIAEoD0gIiAEBEh4KEW9wdGlvbmFsX3NmaXhlZDY0GAogASgQSAmIAQESGwoOb3B0aW9uYWxfZmxvYXQYCyABKAJICogBARIcCg9vcHRpb25hbF9kb3VibGUYDCABKAFIC4gBARIaCg1vcHRpb25hbF9ib29sGA0gASgISAyIAQESHAoPb3B0aW9uYWxfc3RyaW5nGA4gASgJSA2IAQESGwoOb3B0aW9uYWxfYnl0ZXMYDyABKAxIDogBARIeCg1vcHRpb25hbF9jb3JkGBAgASgJQgIIAUgPiAEBElcKF29wdGlvbmFsX25lc3RlZF9tZXNzYWdlGBIgASgLMjEucHJvdG8yX3VuaXR0ZXN0LlRlc3RQcm90bzNPcHRpb25hbC5OZXN0ZWRNZXNzYWdlSBCIAQESVwoTbGF6eV9uZXN0ZWRfbWVzc2FnZRgTIAEoCzIxLnByb3RvMl91bml0dGVzdC5UZXN0UHJvdG8zT3B0aW9uYWwuTmVzdGVkTWVzc2FnZUICKAFIEYgBARJRChRvcHRpb25hbF9uZXN0ZWRfZW51bRgVIAEoDjIuLnByb3RvMl91bml0dGVzdC5UZXN0UHJvdG8zT3B0aW9uYWwuTmVzdGVkRW51bUgSiAEBEhYKDnNpbmd1bGFyX2ludDMyGBYgASgFEhYKDnNpbmd1bGFyX2ludDY0GBcgASgDGicKDU5lc3RlZE1lc3NhZ2USDwoCYmIYASABKAVIAIgBAUIFCgNfYmIiSgoKTmVzdGVkRW51bRIPCgtVTlNQRUNJRklFRBAAEgcKA0ZPTxABEgcKA0JBUhACEgcKA0JBWhADEhAKA05FRxD///////////8BQhEKD19vcHRpb25hbF9pbnQzMkIRCg9fb3B0aW9uYWxfaW50NjRCEgoQX29wdGlvbmFsX3VpbnQzMkISChBfb3B0aW9uYWxfdWludDY0QhIKEF9vcHRpb25hbF9zaW50MzJCEgoQX29wdGlvbmFsX3NpbnQ2NEITChFfb3B0aW9uYWxfZml4ZWQzMkITChFfb3B0aW9uYWxfZml4ZWQ2NEIUChJfb3B0aW9uYWxfc2ZpeGVkMzJCFAoSX29wdGlvbmFsX3NmaXhlZDY0QhEKD19vcHRpb25hbF9mbG9hdEISChBfb3B0aW9uYWxfZG91YmxlQhAKDl9vcHRpb25hbF9ib29sQhIKEF9vcHRpb25hbF9zdHJpbmdCEQoPX29wdGlvbmFsX2J5dGVzQhAKDl9vcHRpb25hbF9jb3JkQhoKGF9vcHRpb25hbF9uZXN0ZWRfbWVzc2FnZUIWChRfbGF6eV9uZXN0ZWRfbWVzc2FnZUIXChVfb3B0aW9uYWxfbmVzdGVkX2VudW0ihQIKGVRlc3RQcm90bzNPcHRpb25hbE1lc3NhZ2USUAoObmVzdGVkX21lc3NhZ2UYASABKAsyOC5wcm90bzJfdW5pdHRlc3QuVGVzdFByb3RvM09wdGlvbmFsTWVzc2FnZS5OZXN0ZWRNZXNzYWdlEl4KF29wdGlvbmFsX25lc3RlZF9tZXNzYWdlGAIgASgLMjgucHJvdG8yX3VuaXR0ZXN0LlRlc3RQcm90bzNPcHRpb25hbE1lc3NhZ2UuTmVzdGVkTWVzc2FnZUgAiAEBGhoKDU5lc3RlZE1lc3NhZ2USCQoBcxgBIAEoCUIaChhfb3B0aW9uYWxfbmVzdGVkX21lc3NhZ2UiyQEKGFByb3RvM09wdGlvbmFsRXh0ZW5zaW9uczJLCg9leHRfbm9fb3B0aW9uYWwSHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYiM3ZqQEgASgFUg1leHROb09wdGlvbmFsMlIKEWV4dF93aXRoX29wdGlvbmFsEh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGInN2akBIAEoBVIPZXh0V2l0aE9wdGlvbmFsiAEBOgzA6MzNCgjI6MzNChBCOAohY29tLmdvb2dsZS5wcm90b2J1Zi50ZXN0aW5nLnByb3RvUAGqAhBQcm90b2J1ZlVuaXR0ZXN0YgZwcm90bzM", [file_google_protobuf_descriptor]);

/**
 * Describes the message proto2_unittest.TestProto3Optional.
 * Use `create(TestProto3OptionalSchema)` to create a new message.
 */
export const TestProto3OptionalSchema = /*@__PURE__*/
  messageDesc(file_google_protobuf_unittest_proto3_optional, 0);

/**
 * Describes the message proto2_unittest.TestProto3Optional.NestedMessage.
 * Use `create(TestProto3Optional_NestedMessageSchema)` to create a new message.
 */
export const TestProto3Optional_NestedMessageSchema = /*@__PURE__*/
  messageDesc(file_google_protobuf_unittest_proto3_optional, 0, 0);

/**
 * Describes the enum proto2_unittest.TestProto3Optional.NestedEnum.
 */
export const TestProto3Optional_NestedEnumSchema = /*@__PURE__*/
  enumDesc(file_google_protobuf_unittest_proto3_optional, 0, 0);

/**
 * @generated from enum proto2_unittest.TestProto3Optional.NestedEnum
 */
export const TestProto3Optional_NestedEnum = /*@__PURE__*/
  tsEnum(TestProto3Optional_NestedEnumSchema);

/**
 * Describes the message proto2_unittest.TestProto3OptionalMessage.
 * Use `create(TestProto3OptionalMessageSchema)` to create a new message.
 */
export const TestProto3OptionalMessageSchema = /*@__PURE__*/
  messageDesc(file_google_protobuf_unittest_proto3_optional, 1);

/**
 * Describes the message proto2_unittest.TestProto3OptionalMessage.NestedMessage.
 * Use `create(TestProto3OptionalMessage_NestedMessageSchema)` to create a new message.
 */
export const TestProto3OptionalMessage_NestedMessageSchema = /*@__PURE__*/
  messageDesc(file_google_protobuf_unittest_proto3_optional, 1, 0);

/**
 * Describes the message proto2_unittest.Proto3OptionalExtensions.
 * Use `create(Proto3OptionalExtensionsSchema)` to create a new message.
 */
export const Proto3OptionalExtensionsSchema = /*@__PURE__*/
  messageDesc(file_google_protobuf_unittest_proto3_optional, 2);

/**
 * @generated from extension: int32 ext_no_optional = 355886728;
 */
export const Proto3OptionalExtensions_ext_no_optional = /*@__PURE__*/
  extDesc(file_google_protobuf_unittest_proto3_optional, 2, 0);

/**
 * @generated from extension: optional int32 ext_with_optional = 355886729;
 */
export const Proto3OptionalExtensions_ext_with_optional = /*@__PURE__*/
  extDesc(file_google_protobuf_unittest_proto3_optional, 2, 1);

